package com.platform.modules.prj.pojo;

import java.math.BigDecimal;
import java.util.List;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

/**
 * @Auther: wangLc
 * @Date: 2019-7-20 12:16
 * @Description: 勘察文件审查合格书DTO
 */
@Data
@ApiModel(value = "合格书DTO", description = "合格书DTO")
public class ProjectCertifi {
    @ApiModelProperty(value = "申报ID")
    private String decId;

    @ApiModelProperty(value = "法定代表人")
    private String comartiperson;
    
    @ApiModelProperty(value = "技术负责人")
    private String leaderName;
    
    @ApiModelProperty(value = "审查编号")
    private String examNo;
    
    @ApiModelProperty(value = "项目名称")
    private String prjName;
    
    @ApiModelProperty(value = "建设单位")
    private String buildCorpName;
    
    @ApiModelProperty(value = "审图机构")
    private String checkOrgName;
    
    @ApiModelProperty(value = "设计单位")
    private String sjCorpName;  
    
    @ApiModelProperty(value = "设计单位资质等级")
    private String sjGrade;  

    @ApiModelProperty(value = "勘察单位名称")
    private String kcCorpName;
    
    @ApiModelProperty(value = "勘察单位资质等级")
    private String kcGrade;

    @ApiModelProperty(value = "建设规模-(工程规模)")
    private String prjScale;

    @ApiModelProperty(value = "建设地址-()")
    private String prjLocation;
    
    @ApiModelProperty(value = "报审人防级别-(人防等级)")
    private String regulatorRfLevel;
    
    @ApiModelProperty(value = "设防烈度（度）")
    private String fortificationIntensity;
    
    @ApiModelProperty(value = "审查时间")
    private String scTime;
    
    @ApiModelProperty(value = "工程项目类别-(建筑类别)")
    private String prjCategory;
    
    @ApiModelProperty(value = "年")
    private String year;

    @ApiModelProperty(value = "月")
    private String month;

    @ApiModelProperty(value = "日")
    private String day;
    
    @ApiModelProperty(value = "专家列表")
    List<PrjSpecUser> prjSpecUserList;
    
    @ApiModelProperty(value = "单体列表")
    List<PrjSingleProject> prjSingleProjectList;
  
    @Data
    @ApiModel(value = "主要审查人员DTO", description = "主要审查人员DTO")
    public static class PrjSpecUser {

        @ApiModelProperty(value = "专业名称")
        private String specialtyName;

        @ApiModelProperty(value = "审查人")
        private String expertScName;

        @ApiModelProperty(value = "审核人")
        private String expertShName;
    }
    
    @Data
    @ApiModel(value = "单体DTO", description = "单体DTO")
    public static class PrjSingleProject {

    	@ApiModelProperty(value = "单体Id")
        private String singleId;
    	
        @ApiModelProperty(value = "单体名称")
        private String singlePrjName;

        @ApiModelProperty(value = "工程类型")
        private String prjCategory;

        @ApiModelProperty(value = "地上层数")
        private Integer landLayer;
        
        @ApiModelProperty(value = "地下层数")
        private Integer undergroundLayer;
        
        @ApiModelProperty(value = "建筑面积")
        private BigDecimal singleBuildingArea;
        
        @ApiModelProperty(value = "高度或深埋")
        private BigDecimal heightOrDepth;
        
        @ApiModelProperty(value = "结构类型")
        private String structureType;
        
        @ApiModelProperty(value = "基础形式")
        private String foundationForm;
        
        @ApiModelProperty(value = "耐火等级")
        private String fireResistantLevel;
        
        @ApiModelProperty(value = "占地面积")
        private BigDecimal coverArea;
        
        @ApiModelProperty(value = "防火分区数量")
        private Integer antiFirePartCount;
        
        @ApiModelProperty(value = "防火分区最大面积")
        private BigDecimal antiFirePartMaxArea;
        
        @ApiModelProperty(value = "防烟分区数量")
        private Integer antiSmokePartCount;
        
        @ApiModelProperty(value = "防烟分区最大面积")
        private BigDecimal antiSmokePartMaxArea;
        
        @ApiModelProperty(value = "火灾危险分类")
        private String fireHazardClassification;
    }

}
